﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using AModel.Generador.Dominio.Entidades;
using AModel.Generador.Dominio.Base;

namespace AModel.Generador.Generacion.Generacion
{
    public class GeneradorIndividualJavaScript: GeneradorIndividual
    {
        String PrototipoNombreClase = "function {0}()";

        String PrototipoVariables = "var {0};";

        String PrototipoFunction = "this.{0} = function()";

        String IniClass = "{";
        String FinClass = "}";

        public GeneradorIndividualJavaScript() {
            
        }

        public override string GenerarElementoIndividual(Dominio.Base.ObjetoUML entidad)
        {
            String resultado = String.Empty;
            if (entidad.GetType().Equals(new Clase("").GetType() )) {
                resultado = generar(entidad);
            }
            return resultado;
        }

        private String generar(ObjetoUML entidad)
        {
            String resultado = String.Format(PrototipoNombreClase, entidad.Nombre);
            resultado += IniClass;
            resultado += FinClass;
            return resultado;
        }
    }
}
